package com.fangcun.service.admin.floor;

import java.util.List;

import com.fangcun.bean.admin.floor.FloorReserveAdminResponse;
import com.fangcun.bean.admin.floor.FloorTeahouseSearchRequest;
import com.fangcun.bean.admin.floor.FloorTeahouseSearchResponse;
import com.fangcun.bean.api.floor.response.FloorResponse;
import com.fangcun.bean.sys.PageBean;
import com.fangcun.common.exception.ProAffairException;
import com.fangcun.entity.Floor;
import com.fangcun.entity.FloorReserve;
import com.fangcun.entity.FloorRoom;
import com.fangcun.entity.FloorRoomDetail;
import com.fangcun.entity.Teahouse;
import com.github.pagehelper.PageInfo;

/**
 * @作者： 陳曉鬆 @时间： 2021年1月7日 - 上午10:29:08 @description：->
 */
public interface FloorAdminService {

	/**
	 * @作者：陳曉鬆 @时间：2021年1月7日 上午10:55:02 @版本：V1.0 @description：-> 茶楼列表
	 */
	public PageInfo<FloorTeahouseSearchResponse> teahouseList(PageBean<FloorTeahouseSearchRequest> request) throws ProAffairException;

	/**
	 * @作者：陳曉鬆 @时间：2021年1月7日 上午11:33:06 @版本：V1.0 @description：-> 新增
	 */
	public void add(Teahouse request) throws ProAffairException;

	/**
	 * @作者：陳曉鬆 @时间：2021年1月7日 上午11:34:32 @版本：V1.0 @description：-> 修改
	 */
	public void update(Teahouse request) throws ProAffairException;

	/**
	 * @作者：陳曉鬆 @时间：2021年1月7日 下午1:10:16 @版本：V1.0 @description：-> 楼层列表
	 */
	public List<FloorResponse> floorList(Long teahouseId) throws ProAffairException;

	/**
	 * @作者：陳曉鬆 @时间：2021年1月7日 下午1:26:24 @版本：V1.0 @description：-> 楼层添加
	 */
	public void floorAdd(Floor request) throws ProAffairException;

	/**
	 * @作者：陳曉鬆 @时间：2021年1月7日 下午1:27:24 @版本：V1.0 @description：-> 楼层修改
	 */
	public void floorUpdate(Floor request) throws ProAffairException;

	/**
	 * @作者：陳曉鬆 @时间：2021年1月7日 下午1:44:24 @版本：V1.0 @description：-> 房间添加
	 */
	public void roomAdd(FloorRoom request) throws ProAffairException;

	/**
	 * @作者：陳曉鬆 @时间：2021年1月7日 下午1:44:41 @版本：V1.0 @description：-> 房间修改
	 */
	public void roomUpdate(FloorRoom request) throws ProAffairException;

	/**
	 * @作者：陳曉鬆 @时间：2021年1月7日 下午4:53:29 @版本：V1.0 @description：-> 房间详情
	 */
	public FloorRoomDetail roomDetail(Long roomId) throws ProAffairException;

	/**
	 * @作者：陳曉鬆 @时间：2021年1月7日 下午5:09:29 @版本：V1.0 @description：-> 房间详情修改
	 */
	public void roomDetailUpdate(FloorRoomDetail request) throws ProAffairException;

	/**
	 * @作者：陳曉鬆 @时间：2021年1月8日 上午9:21:00 @版本：V1.0 @description：-> 预定列表
	 */
	public PageInfo<FloorReserveAdminResponse> reserveList(PageBean<FloorReserve> request) throws ProAffairException;

	/**
	 * @作者：陳曉鬆 @时间：2021年1月8日 上午10:35:09 @版本：V1.0 @description：-> 修改预定
	 */
	public void updateReserve(FloorReserve request) throws ProAffairException;

}
